<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
<head>
   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
   <meta name="GENERATOR" content="Mozilla/4.76 [en] (Win95; U) [Netscape]">
   <meta name="Author" content="Julie Marguerite and Emmanuel Cecchet">
   <title>RUBBoS: Installation and configuration</title>
</head>
<body text="#000000" bgcolor="#FFFFFF" link="#0000EE" vlink="#551A8B" alink="#FF0000">

<center><img SRC="RUBBoS_logo.jpg" height=100 width=291></center>

<center>
<h1>
<font color="#FF6600">Installing and configuring</font></h1></center>

<h2>
<b><font color="#006600">Software requirements</font></b></h2>
<font color="#000000">For the bulletin bord:</font>
<ul>
<li>
<a href="http://www.mysql.com/">MySQL</a> v.3.23.43-max</li>

<li>
<a href="http://www.apache.org">Apache</a> v.1.3.22</li>

<li>
<a href="http://www.php.net">PHP</a> v.4.0.6 module for Apache</li>
</ul>
<font color="#000000">For the client:</font>
<ul>
<li>
Sun <a href="http://java.sun.com/products/">JDK</a> 1.3.1</li>

<li>
<a href="http://freshmeat.net/projects/sysstat">Sysstat utility</a></li>

<li>
Gnuplot</li>
</ul>

<h2>
<b><font color="#006600">RUBBoS files structure</font></b></h2>
The directory tree of RUBBoS is organized as follow:
<br>&nbsp;
<table BORDER COLS=2 WIDTH="100%" NOSAVE >
<tr NOSAVE>
<td WIDTH="25%" NOSAVE><tt>/RUBBoS</tt></td>

<td>contains configuration files for mysql (mysql.properties) and RUBiS
(rubis.properties) and shell scripts for starting or stoping Jonas and
Tomcat. This directoty also contains the makefile.</td>
</tr>

<tr>
<td><tt>/RUBBoS/doc</tt></td>

<td>contains the RUBBoS documentation.</td>
</tr>

<tr>
<td><tt>/RUBBoS/database</tt></td>

<td>contains the files with the lists of regions and categories used to
generate the database data.</td>
</tr>

<tr>
<td><tt>/RUBBoS/PHP</tt></td>

<td>contains the html files and PHP scripts for the version of RUBiS that
is designed to be used with PHP only.</td>
</tr>

<tr>
<td><tt>/RUBBoS/workload</tt></td>

<td>contains the files that describes the workload of the bidding system.
We designed various patterns of request distribution. The browse_only_transition
pattern simulate user's behavior that only generate read requests from
the database.
<br>The default_transition pattern is a mix of read and write requests.
It simulate a user who looks for items and categories but also who can
sell or put bids on items.</td>
</tr>

<tr>
<td><tt>/RUBBoS/bench</tt></td>

<td></td>
</tr>

<tr>
<td><tt>/RUBBoS/edu/rice/rubbos/client</tt></td>

<td><tt>edu.rice.rubis.client</tt> package contains the files used in the
benchmark to simulate clients and perform measurements.</td>
</tr>
</table>

<br>&nbsp;
<h2>
<b><font color="#006600">Configuration</font></b></h2>

<h3>
<font color="#000000">Setting up the Makefile for the client</font></h3>
<font color="#000000">Various environment variables are defined in the
makefile. You have to set them to correspond to your installation directories
:</font>
<br><font color="#000000">JAVA = path to the program execution tool (java)</font>
<br><font color="#000000">JAVAC = path to the java compiler (javac or jikes)</font>
<br><font color="#000000">RMIC = path to the stub generator (rmic)</font>
<br><font color="#000000">CLASSPATH = your classpath including path to
j2ee.jar and servlet.jar.</font>
<br><font color="#000000"></font>&nbsp;
<h3>
Compiling and running</h3>
<b><font color="#CC6600">Client emulator</font></b>
<br>&nbsp;
<table BORDER COLS=2 WIDTH="100%" NOSAVE >
<tr NOSAVE>
<td WIDTH="20%" NOSAVE><tt>make client</tt></td>

<td><font color="#000000">compile the client</font></td>
</tr>

<tr>
<td><tt>make emulator</tt></td>

<td><font color="#000000">run the client</font></td>
</tr>
</table>

<p><b><font color="#CC6600">API documentation</font></b>
<br>&nbsp;
<table BORDER COLS=2 WIDTH="100%" NOSAVE >
<tr NOSAVE>
<td WIDTH="20%" NOSAVE><tt><font color="#000000">make javadoc</font></tt></td>

<td><font color="#000000">&nbsp;generate the javadoc documentation</font></td>
</tr>
</table>

<h3>
Setting up rubbos.properties</h3>
This files contains information about the http server : name, port, paths
for html pages and scripts for each version of RUBBoS. The version of RUBBoS
and the transition table (workload pattern) currently used and are also
defined in this file
<br>&nbsp;
<p>
<hr WIDTH="100%">
<center>&nbsp;<i>RUBBoS (C) 2001 - Rice University/INRIA</i>
<br><img SRC="rice.gif" height=40 width=138><img SRC="logo_inria.gif" height=55 width=185></center>

</body>
</html>
